package com.night.icm.service.business.service;

import com.night.icm.common.utils.PageDataDTO;
import com.night.icm.common.utils.TermType;
import com.night.icm.model.business.StudentCourseGradeGatherDTO;

import java.util.List;

/**
 * StudentCourseGradeGatherService
 *
 * @author Liao ZhiYong
 * @date 2020/2/16
 */
public interface StudentCourseGradeGatherService {

    /**
     * 分页查询学生课程成绩汇总
     *
     * @param page      页号，从0开始
     * @param size      每页记录条数
     * @param sort      排序字段，例如：字段1,asc,字段2,desc
     * @param studentId 学生id
     * @param year      所属年度
     * @param termType  所属学期
     * @return 学生课程成绩汇总
     */
    PageDataDTO<StudentCourseGradeGatherDTO> findOnePage(int page, int size, String sort, String studentId, String year, TermType termType);

    /**
     * 模糊查询学生课程成绩汇总
     *
     * @param studentCode 学生code
     * @param year        所属年度
     * @param termType    所属学期
     * @return 学生课程成绩汇总
     */
    List<StudentCourseGradeGatherDTO> search(String studentCode, String year, TermType termType);
}
